home *** CD-ROM | disk | FTP | other *** search
- PRT_LINE /x1k1 ┌───────┐
- │ XBIOS │
- ──────────────────────────────────┴───────┴─────────────────────────────────────
- !PROG_executeSUPERsubroutine!(38,subroutineaddress.L)
- ────────────────────────────────────────────────────────────────────────────────
- !PROG_SetINTerruptVECTOR!(13,vectornumber,vector.L)
-
- vectornumber
- 0-15
- ────────────────────────────────────────────────────────────────────────────────
- !PROG_INTerruptENABLE!(27,intnumber)
-
- intnumber
- 0-15
- ────────────────────────────────────────────────────────────────────────────────
- !PROG_INTerruptDISABLE!(26,intnumber)
-
- intnumber
- 0-15
- ────────────────────────────────────────────────────────────────────────────────
- !PROG_TIMER!(31,timer,control,data,vector.L)
-
- timer
- 0:A
- 1:B
- 2:C
- 3:D
- ────────────────────────────────────────────────────────────────────────────────
- !CONS_GetBUFFERS!(14,device) = bufferinputaddress.L
-
- device bufferinput
- 0:AUXI byte#
- 1:KBRD 0- 3 buffer
- 2:MIDI 4- 5 size
- 6- 7 head
- 8- 9 tail
- 10-11 low
- 12-13 high
- if=0/2 bufferoutput is after the bufferinput
- ────────────────────────────────────────────────────────────────────────────────
- !CONS_GetVECTORS!(34) = vectortable.L
-
- vectortable
- byte#
- 0- 3 midi input (D0=data)
- 4- 7 ikbd error
- 8-11 midi error
- 12-15 ikbd status (A0=data address)
- 16-19 mous input (A0=data address)
- 20-23 clck input (A0=data address)
- 24-27 joys input (A0=data address D0=RLDU)
- ────────────────────────────────────────────────────────────────────────────────
- !IKBD_OUTString!(25,#char-1,stringaddress.L)
- ────────────────────────────────────────────────────────────────────────────────
- !MOUS_INIT!(0,mode,parametersaddress.L,vector.L)
-
- mode
- 0:disable mouse
- 1:enable mouse,relative mode
- 2:enable mouse,absolute mode
- 4:enable mouse,keyboard mode
-
- parameters
- byte#
- 0 Yorigine(0:up 1:down)
- 1 buttons(see HD6301 command:MOUSE_Buttons)
- 2 #pixel_X
- 3 #pixel_Y
- 4- 5 Xmaxi
- 6- 7 Ymaxi
- 8- 9 Xinitial
- 10-11 Yinitial
- ────────────────────────────────────────────────────────────────────────────────
- !MIDI_OUTString!(12,#char-1,stringaddress.L)
- ────────────────────────────────────────────────────────────────────────────────
- !KBRD_SetkeyTABLES!(16,normal.L,shift.L,capslock.L) = tablestructureaddress.L
-
- normal shift capslock tablestructure
- addresses of tables byte#
- of 128 bytes each 0- 3 normal
- if =-1 no set 4- 7 shift
- each SCAN corresponding to ASCII 8-11 capslock
- ────────────────────────────────────────────────────────────────────────────────
- !KBRD_ResetkeyTABLES!(24)
- ────────────────────────────────────────────────────────────────────────────────
- !KBRD_getsetDELayREPeat!(35,delay,repeat) = olddelayrepeat
-
- delay repeat olddelayrepeat
- 0-255 0-255 b0-b7 repeat (in 1/50 sec.)
- if =-1 no set b8-b15 delay (in 1/50 sec.)
- ┌───────┐
- │ XBIOS │
- ──────────────────────────────────┴───────┴─────────────────────────────────────
- !SCRN_GetRESolution!(4) = resolution
-
- resolution
- 0:low
- 1:medium
- 2:high
- ────────────────────────────────────────────────────────────────────────────────
- !SCRN_GetPhysicalBASE!(2) = physicalbase.L
- ────────────────────────────────────────────────────────────────────────────────
- !SCRN_getsetCOLOR!(7,colorregister,color) = oldcolor
-
- color
- if =-1 no set
- ────────────────────────────────────────────────────────────────────────────────
- !SCRN_SetPALETTE!(6,paletteaddress.L)
- ────────────────────────────────────────────────────────────────────────────────
- !SCRN_GetLogicalBASE!(3) = logicalbase.L
- ────────────────────────────────────────────────────────────────────────────────
- !SCRN_SET!(5,logicalbase.L,physicalbase.L,resolution)
-
- logicalbase physicalbase resolution
- if =-1 not set if =-1 not set if =-1 not set
- ────────────────────────────────────────────────────────────────────────────────
- !SCRN_WaitVerticalBLanking!(37)
- ────────────────────────────────────────────────────────────────────────────────
- !SCRN_CurSoRCONFiguration!(21,function,rate) = rate
-
- function
- 0:disable cursor
- 1:enable cursor
- 2:flashing cursor
- 3:still cursor
- 4:set rate flashing cursor
- 5:get rate flashing cursor
-
- rate
- vblcount if function=4
- ────────────────────────────────────────────────────────────────────────────────
- !SCRN_getsetBLITterMODE!(64,blittermode) = blittermode
-
- blittermode
- b0 soft/hard
- b1 absent/present
- b2-b14 reserved
- b15 set/get
- ────────────────────────────────────────────────────────────────────────────────
- !SOUN_RW!(28,data,register) = data
-
- data register
- if W b0-b3 register
- b7 R/W
-
- data
- if R
- ────────────────────────────────────────────────────────────────────────────────
- !SOUN_PLAY!(32,songaddress.L)
-
- song(bytestructure)
- if =$00-$0F load this sound register with the next byte
- if =$80 load temporary register with the next byte
- if =$81 do variation in a sound register (1rst byte)
- begin with the temporary register
- with a step (2nd byte signed)
- until the end value is reached (3rd byte)
- if =$82 wait #(next byte) of 1/50 second
- if = 0 then stop song
- ────────────────────────────────────────────────────────────────────────────────
- !SOUN_PortABitsON!(30,mask)
-
- mask
- if bit=0 then no change
- if bit=1 then bit on
- ────────────────────────────────────────────────────────────────────────────────
- !SOUN_PortABitsOFF!(29,mask)
-
- mask
- if bit=0 then bit off
- if bit=1 then no change
- ┌───────┐
- │ XBIOS │
- ──────────────────────────────────┴───────┴─────────────────────────────────────
- !DISK_FORMAT!(10,buffer.L,0.L,drive,sectorpertrack,track,face,1,$87654321,virgin)
-
- buffer drive sectorpertrack track face virgin
- address 0-31 1-10 0-79 0-1 $E5E5
- ~ 8 Kb for ex.
- if bad sector error
- contain the bad sector list
- by word (0=end)
- after the call
- ────────────────────────────────────────────────────────────────────────────────
- !DISK_READ!(8,buffer.L,0.L,drive,sector,track,face,#sector)
-
- buffer drive sector track face #sector
- address 0-31 1-10 0-79 0-1 1-10
- ────────────────────────────────────────────────────────────────────────────────
- !DISK_WRITE!(9,buffer.L,0.L,drive,sector,track,face,#sector)
-
- buffer drive sector track face #sector
- address 0-31 1-10 0-79 0-1 1-10
- ────────────────────────────────────────────────────────────────────────────────
- !DISK_VERIFY!(19,buffer.L,0.L,drive,sector,track,face,#sector)
-
- buffer drive sector track face #sector
- address 0-31 1-10 0-79 0-1 1-10
- if bad sector error
- contain the bad sector list
- by word (0=end)
- after the call
- ────────────────────────────────────────────────────────────────────────────────
- !DISK_SetBOOTsector!(18,buffer.L,identifier.L,disktype,execflag)
-
- buffer
- address of 512 bytes
-
- identifier
- b0-b23 number to write
- b24 if = 0 then randomize a number
- b31 if = 1 then no change
-
- disktype
- 2:single side
- 3:double side
- -1:no change
-
- execflag
- 0:normal
- 1:executable
- -1:no change
- ────────────────────────────────────────────────────────────────────────────────
- !PRNT_getsetCONFiguration!(33,config) = config
-
- config
- b0 dot/daisy
- b1 monochrom/color
- b2 Atari/Epson
- b3 draft/letter
- b4 printer/auxiliary
- b5 listing/page
- b6-b14 -
- b15 set/get
- ────────────────────────────────────────────────────────────────────────────────
- !PRNT_BLocKCOPY!(36,parameters.L)
-
- parameters
- address
- byte#
- 0- 3 block address (even or odd)
- 4- 5 offset in pixels (0-7)
- 6- 7 width in pixels
- 8- 9 height in pixels
- 10-11 left in pixels
- 12-13 right in pixels
- 14-15 screen resolution (0-2)
- 16-17 printer resolution (0:draft 1:letter)
- 18-21 screen color palette address (16 words)
- 22-23 printer type
- (0:Atari-dot-mono 1:Atari-dot-color 2:Atari-daisy 3:Epson-dot-mono)
- 24-25 output (0:printer 1:auxiliary)
- 26-29 printer color palette address (16 words)
-
- N.B.:runs only if the scrncopy system variable is disable
- ────────────────────────────────────────────────────────────────────────────────
- !PRNT_SCReeNCOPY!(20)
- ┌───────┐
- │ XBIOS │
- ──────────────────────────────────┴───────┴─────────────────────────────────────
- !AUXI_SetCONFiguration!(15,baud,ctrl,ucr,rsr,tsr,scr)
-
- baud
- 0:19200 bauds
- 1: 9600
- 2: 4800
- 3: 3600
- 4: 2400
- 5: 2000
- 6: 1800
- 7: 1200
- 8: 600
- 9: 300
- 10: 200
- 11: 150
- 12: 134
- 13: 110
- 14: 75
- 15: 50
-
- ctrl
- 0:no handshake
- 1:xon/xoff
- 2:rts/cts
- 3:xon/xoff and rts/cts
- ────────────────────────────────────────────────────────────────────────────────
- !TIME_GET!(23) = time.L
-
- time
- b0-b4 second/2
- b5-b10 minute
- b11-b15 hour
- b16-b20 day
- b21-b24 month
- b25-b31 year-1980
- ────────────────────────────────────────────────────────────────────────────────
- !TIME_SET!(22,time.L)
- ────────────────────────────────────────────────────────────────────────────────
- !TIME_GetRANDOMnumber!(17) = randomnumber.L
-
- randomnumber
- b0-b23 randomnumber
- b24-b31 0
-